/**
* @project admin-go-api
* @name sysPost
* @descriptions 岗位相关结构体
* @author 寒锋
* @date 2023-12-15 11:07:36
 */

package entity

import "admin-go-api/common/util"

// SysPost 岗位模型
type SysPost struct {
	PostId     uint       `gorm:"column:post_id;autoIncrement;comment:'主键';primaryKey;NOT NULL;" json:"post_id"`      // id
	PostCode   string     `gorm:"column:post_code;varchar(64);comment:'岗位编码';NOT NULL;default:''" json:"post_code"`   // 岗位编码
	PostName   string     `gorm:"column:post_name;varchar(50);comment:'岗位名称';NOT NULL;default:''" json:"post_name"`   // 岗位名称
	PostStatus int        `gorm:"column:post_status;comment:'状态（1->正常 2->停用）';NOT NULL;default:1" json:"post_status"` // 状态（1->正常 2->停用）
	CreateTime util.HTime `gorm:"column:create_time;comment:'创建时间';NOT NULL" json:"create_time"`                      // 创建时间
	Remark     string     `gorm:"column:remark;varchar(600);comment:'备注'" json:"remark"`                              // 备注
}

func (SysPost) TableName() string {
	return "sys_post"
}

type CreateSysPostDto struct {
	PostCode   string `json:"post_code"`
	PostName   string `json:"post_name"`    // 岗位名称
	PostStatus int    ` json:"post_status"` // 状态（1->正常 2->停用）
	Remark     string `json:"remark"`       // 备注
}

// UpdateSysPostStatusDto 修改状态参数
type UpdateSysPostStatusDto struct {
	PostId     uint // id
	PostStatus int  // 状态（1->正常 2->停用）
}

// SysPostIdDto id参数
type SysPostIdDto struct {
	PostId uint // id
}

// DelSysPostDto 删除岗位参数
type DelSysPostDto struct {
	PostId []uint // id列表
}

// SelectSysPost 岗位下拉对象模型
type SelectSysPost struct {
	PostId   uint   `json:"post_id"`   // id
	PostName string `json:"post_name"` // 岗位名称
}
